package net.zjitc.service.impl;

import net.zjitc.dao.CartDao;
import net.zjitc.dao.impl.CartDaoImpl;
import net.zjitc.pojo.CartItem;
import net.zjitc.service.CartService;
import net.zjitc.utils.CommonUtils;

import java.util.List;

/**
 * Created by Administrator on 2017/12/11.
 */
public class CartServiceImpl implements CartService {
    CartDao cartDao = new CartDaoImpl();

    public List<CartItem> findByUid(int uid) {
        return cartDao.findByUid(uid);
    }

    public int add(CartItem cartItem) {
        //在增加之前，判断数据库中是否有这个商品条目， pid  uid
        // 如果有，直接修改它的数量，
        // 如果没有，直接添加新的条目

        ///从数据库中查询_cartitem
        CartItem _cartitem = cartDao.findByPidAndUid(cartItem.getProduct().getPid(),cartItem.getUser().getUid());
        if (_cartitem == null){
            //新增加一条
            cartItem.setCartid(CommonUtils.getUUID());//设置主键
           return cartDao.add(cartItem);
        }else {
            //数据库中有此商品记录，则修改数量，数量 = 页面数量 + 数据中的数量
            int quantity = cartItem.getQuantity()+_cartitem.getQuantity();
            _cartitem.setQuantity(quantity);
            //更新
            return  cartDao.update(_cartitem);
        }
    }

    public void deleteByUid(int uid) {

    }
}
